aboutsummaryrefslogtreecommitdiffstats
path: root/src/routes/(app)/messages/[recipient]/+page.server.ts
blob: 6e61e1b4f1e21c4618e77efd90b61d6ffb3fee9f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import { get } from "$lib/utils";
import type { Message } from "$lib/types";

export async function load({ params, parent }) {
	const { user } = await parent();
	const { since = 0 } = params;

	let messages: Message[] = [];
	const recipient = await get(`/users/${params.recipient}`);

	try {
		messages = await get(`/${user.pubkey}/${since}/messages`);

		messages = messages
			.filter(
				(m: Message) =>
					m.recipient?.id === recipient.id || m.author?.id === recipient.id,
			)
			.sort((a, b) => a.created_at - b.created_at);
	} catch (e) {
		console.log("failed to fetch nostr messages", e);
	}

	return { messages, recipient, user };
}